#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include<QTcpSocket>
#include<QHostAddress>
#include<QFile>
#include<QFileDialog>
#include<QDebug>
#include<QListWidgetItem>
#include<QMessageBox>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private slots:
    void on_pushButton_connect_clicked();

    void on_pushButton_download_clicked();
    //连接成功的槽函数
    void slot_connected();
    //接收到消息的槽函数
    void slot_readyRead();

    void on_listWidget_itemClicked(QListWidgetItem *item);

private:
    Ui::MainWindow *ui;
    //用于通信的套接字
    QTcpSocket *socket;
    //下载的文件名称
    QString fileName;
    //下载的文件大小
    int fileSize = 0;
    //下载标志位
    bool isDownload = false;
    //下载下来的本地文件
    QFile file;
    //代表当前接收到的文件大小
    int readSize = 0;
};
#endif // MAINWINDOW_H
